﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Gui
{
    class DefaultStyle : Style
    {

        internal override void PrintMenuTop()
        {
            MenuTextColor();
            Console.Write("you have the following choises:\n");
            MenuSeperatorColor();
            Console.Write("-----------------------------");
            MenuTextColor();
        }

        internal override void PrintMenuBottom()
        {
            MenuSeperatorColor();
            Console.Write("-----------------------------\n");
        }

        internal override void PrintPickText()
        {
            MenuTextColor();
            Console.Write("What do you pick: ");
        }

        internal override void PrintMenuItemExecuteStart()
        {
            MenuSeperatorColor();
            Console.WriteLine("\n---OUTPUT START---");
            OutputColor();
        }

        internal override void PrintMenuException(Exception e)
        {
            Console.WriteLine();
            Console.WriteLine("Invalid Input");
        }

        internal override void PrintMenuItemExecuteEnd()
        {
            MenuSeperatorColor();
            Console.WriteLine();
            Console.WriteLine("---/OUTPUT END---");
            SeperatorColor();
            Console.Write("++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n\n\n");
            MenuSeperatorColor();
            Console.Write("-----------------------------\n");
            OutputColor();
        }

        public void MenuTextColor()
        {
            Console.BackgroundColor = ConsoleColor.Black;
            Console.ForegroundColor = ConsoleColor.DarkCyan;
        }

        public void MenuSeperatorColor()
        {
            Console.BackgroundColor = ConsoleColor.Black;
            Console.ForegroundColor = ConsoleColor.DarkRed;
        }
        public void SeperatorColor()
        {
            Console.BackgroundColor = ConsoleColor.Black;
            Console.ForegroundColor = ConsoleColor.DarkCyan;
        }

        public void OutputColor()
        {
            Console.BackgroundColor = ConsoleColor.Black;
            Console.ForegroundColor = ConsoleColor.White;
        }

        internal override void PrintCreatorSignature()
        {
            Console.WriteLine("**Default style by Author of Menu**");
        }
    }
}
